package com.fast.mybatis.util;

import com.lkx.util.Excel;
import org.thymeleaf.util.StringUtils;

import java.io.Serializable;

/**
 * @Author likaixuan
 * @Description
 * @Create Date  2018/9/6 21:57
 * @Version 1.0
 */
public class TableFiledEntity implements Serializable {

    /**
     * 数据库字段类型-数据库原始类型
     */
    private String dbFiledType;

    /**
     * 数据库字段名称-数据库字段原始名称
     */
    @Excel(title = "数据库字段名称")
    private String dbFiledName;

    /**
     * 数据库字段名称-转换为javaBean的字段名称
     */
    @Excel(title = "字段名称")
    private String filedName;

    /**
     * 数据库字段类型-转换成java后的类型
     */
    @Excel(title = "字段类型")
    private String filedType;

    /**
     * 数据库字段备注
     */
    @Excel(title = "字段备注")
    private String filedMark;

    // 字段是否为主键
    private Boolean key;

    /**
     * 字段默认值
     */
    private String defaults;
    /**
     * 是否可为空
     */
    private Boolean isNull;


    public Boolean getKey() {
        return key;
    }

    public void setKey(Boolean key) {
        this.key = key;
    }


    public String getDbFiledName() {
        return dbFiledName;
    }

    public void setDbFiledName(String dbFiledName) {
        this.dbFiledName = dbFiledName;
    }

    public String getDbFiledType() {
        return dbFiledType;
    }

    public void setDbFiledType(String dbFiledType) {
        this.dbFiledType = dbFiledType;
    }

    public String getDefaults() {
        return defaults;
    }

    public void setDefaults(String defaults) {
        this.defaults = defaults;
    }

    public Boolean getNull() {
        return isNull;
    }

    public void setNull(Boolean aNull) {
        isNull = aNull;
    }

    public String getFiledName() {
        return filedName;
    }

    public void setFiledName(String filedName) {
        this.filedName = filedName;
    }

    public String getFiledType() {
        return filedType;
    }

    public void setFiledType(String filedType) {
        this.filedType = filedType;
    }

    public String getFiledMark() {
        if (StringUtils.isEmpty(filedMark)) {
            filedMark = filedName;
        }
        return filedMark;
    }

    public void setFiledMark(String filedMark) {
        this.filedMark = filedMark;
    }
}
